Higher-Order Demand-Driven Program Analysis (Artifact)

نویسندگان

  • Leandro Facchinetti
  • Zachary Palmer
  • Scott F. Smith
چکیده

This artifact is a proof-of-concept implementation of DDPA, an on-demand program analysis for higherorder functional programs. The implementation, written in OCaml, includes a parser, evaluator, and DDPA analysis for the language defined in the companion paper (including the proper record semantics extension). The analysis may be performed using different levels of precision as specified by the user and is capable of rendering the control flow graphs and pushdown systems using the GraphViz language DOT. This artifact was used to verify the conclusions of the companion paper and produces visualizations matching those figures in the companion paper’s overview. 1998 ACM Subject Classification F.3.2. Semantics of Programming Languages

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Boomerang: Demand-Driven Flow- and Context-Sensitive Pointer Analysis for Java (Artifact)

Evaluating pointer analyses with respect to soundness and precision has been a tedious task. Within this artifact we present PointerBench, the benchmark suite used in the paper to compare the pointer analysis Boomerang with two other demand-driven pointer analyses, SB [2] and DA [3]. We show PointerBench can be used to test different pointer analyses. In addition to that, the artifact contains ...

متن کامل

Higher-Order Demand-Driven Program Analysis

We explore a novel approach to higher-order program analysis that brings ideas of on-demand lookup from first-order CFL-reachability program analyses to higher-order programs. The analysis needs to produce only a control-flow graph; it can derive all other information including values of variables directly from the graph. Several challenges had to be overcome, including how to build the control...

متن کامل

Evaluating a Demand Driven Technique for Call Graph Construction

With the increasing importance of just-in-time or dynamic compilation and the use of program analysis as part of software development environments, there is a need for techniques for demand driven construction of a call graph. We have developed a technique for demand driven call graph construction which handles dynamic calls due to polymorphism in object-oriented languages. Our demand driven te...

متن کامل

Does Participation in Farmer Field School Extension Program Improve Crop Yields? Evidence from Smallholder Tea Production Systems in Kenya

Agricultural Extension services are among the most important rural services in developing countries. The services are considered to be a key driver of technological change and productivity growth in agriculture. In Kenya, like in the rest of the developing economies, agricultural extension has largely been delivered through supply–driven approaches. Due to perceived low impact of agricultural e...

متن کامل

Simultaneous Demand-Driven Data-Flow and Call Graph Analysis

Recently, there has been much interest in performing demand-driven data-flow analysis in software development environments. Demand-driven analysis techniques compute data-flow fact(s) for a particular program point, rather than computing data-flow information for the entire program. The existing work in this area, however, assumes that the static call graph is available for the entire program. ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • DARTS

دوره 2  شماره 

صفحات  -

تاریخ انتشار 2016